// 权限控制
import router from '@/router'
import store from '@/store'
// 进度条
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
// 白名单，用户未登录能去的页面
const whileList = [
  '/login',
  '/404'
]
router.beforeEach(async (to, from, next) => {
  NProgress.start()
  // token用于做判断
  const token = store.state.user.token
  // 如果token有，表示已经登录，不能再让用户进入登录页，自动跳转到主页home
  if (token) {
    if (to.path === '/login') {
      next('/')
      NProgress.done()
    } else {
      // 如果没有跳转到login页，并且token有，但是用户id没有，就重新发送请求
      // if (!store.state.user.UserLoginData.userId) {
      //   try {
      //     await store.dispatch('user/AcLoginRequestFn', store.state.user.UserLoginData)
      //     next()
      //   } catch (err) {
      //     console.log(err)
      //   }
      // }
      next()
    }
  } else {
    if (whileList.includes(to.path)) {
      console.log('是白名单')
      next()
    } else {
      console.log('不是白名单')
      next('/login')
      NProgress.done()
    }
  }
})
router.afterEach((to, from) => {
  NProgress.done()
})
